package org.nanotek;

import java.util.Date;

@SuppressWarnings({ "serial", "hiding" })
public class KongDate<$I extends DateBase<Kong<Date>> , I extends Kong<Date>>  extends DateBase<Kong<Date>> implements TemporalImaginary<Context<$I,I>, Kong<Date>> {

        protected DateBase<Kong<Date>> date;
        protected Kong<?> id;

        @SuppressWarnings("unchecked")
        public KongDate() {

                super(new Date(System.currentTimeMillis()));
                this.date = new DateBase<Kong<Date>>(super.dateCreation);
        }

		@Override
		public Class<Kong<Date>> getClazz() {
			return null;
		}
		
        @Override
        public Kong<?> get() {
                return  id;
        }


        @Override
        public Kong<?> getId() {
                return id;
        }

        @Override
        //Passing the Date CReation will return an instance that
        // represents
        public Kong<Date> getTemporalImaginary(Kong<Kong<?>> kong) {
                return (Kong<Date>) id;
        }

		@Override
		public void setId(Kong<?> id) {
			this.id = id;
		}

}